#ifndef AUDIO_TONE_URI_H
#define AUDIO_TONE_URI_H

// 定义语言枚举
typedef enum {
    LANGUAGE_CHINESE,
    LANGUAGE_ENGLISH,
    LANGUAGE_MAX // 用于表示语言的总数
} audio_language_t;

// 定义音频提示音枚举
typedef enum {
    RESPONSE,

    CHARGE,
    TURN_ON,
    VOL_CHANGE,
    KACHA,
    PING,
    NFC_CHANGE,

    WIFI_OK,
    WIFI_FAIL,
    WIFI_CONFIG,
    NET_WRONG,
    NET_SYNC,
    RESTART,
    LOW_BATTERY,
    SHUTDOWN,

    CTW_MODE,
    HTT_MODE,
    LPR_MODE,
    VA_MODE,
    SC_MODE,

    TONE_MAX // 用于表示音频文件的总数
} audio_tone_t;

// 定义一个二维数组，用于存储不同语言下的音频路径
static const char *audio_tone_uri[LANGUAGE_MAX][TONE_MAX] = {
    [LANGUAGE_CHINESE] = {
        "zaine.mp3",  // RESPONSE
        "turn_on.mp3",// TURN_ON
        "vol_change.mp3", // VOL_CHANGE
        "ping.mp3",   // PING

        "cn/wifi_ok_cn.mp3",  // WIFI_OK
        "cn/wifi_fail_cn.mp3", // WIFI_FAIL
        "cn/wifi_config_cn.mp3", // WIFI_CONFIG
        "cn/net_wrong_cn.mp3", // NET_WRONG
        "cn/net_sync_cn.mp3",  // NET_SYNC
        "cn/restart_cn.mp3",   // RESTART
        "cn/bat_low_cn.mp3",   // LOW_BATTERY
        "cn/turn_off_cn.mp3",  // SHUTDOWN

        "cn/CTW_cn.mp3", // CTW_MODE
        "cn/HTT_cn.mp3", // HTT_MODE
        "cn/LPR_cn.mp3", // LPR_MODE
        "cn/VA_cn.mp3",  // VA_MODE
        "cn/SC_cn.mp3"   // SC_MODE
    },
    [LANGUAGE_ENGLISH] = {
        "zaine.mp3",  // RESPONSE
        "turn_on.mp3",// TURN_ON
        "vol_change.mp3", // VOL_CHANGE
        "ping.mp3",   // PING

        "en/wifi_ok_en.mp3",  // WIFI_OK
        "en/wifi_fail_en.mp3", // WIFI_FAIL
        "en/wifi_config_en.mp3", // WIFI_CONFIG
        "en/net_wrong_en.mp3", // NET_WRONG
        "en/net_sync_en.mp3",  // NET_SYNC
        "en/restart_en.mp3",   // RESTART
        "en/bat_low_en.mp3",   // LOW_BATTERY
        "en/turn_off_en.mp3",  // SHUTDOWN

        "en/CTW_en.mp3", // CTW_MODE
        "en/HTT_en.mp3", // HTT_MODE
        "en/LPR_en.mp3", // LPR_MODE
        "en/VA_en.mp3",  // VA_MODE
        "en/SC_en.mp3"   // SC_MODE
    }
};

#ifdef __cplusplus
extern "C" {
#endif
    void set_language(audio_language_t language);
    void play_tone(audio_tone_t tone);
    void play_sync_tone(audio_tone_t tone);
#ifdef __cplusplus
}
#endif

#endif // AUDIO_TONE_URI_H
